package com.siam.package_rider.model.param;

import com.siam.package_common.model.valid_group.ValidGroupOfAudit;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.siam.package_rider.entity.TbRiderWithdrawRecord;
import com.siam.package_common.entity.BaseParam;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * ---------------------------
 * 骑手提现记录表 (TbRiderWithdrawRecordParam)
 * ---------------------------
 * 作者：  高品
 * 时间：  2025-03-29 18:55:18
 * ---------------------------
 */
@Data
public class TbRiderWithdrawRecordParam extends BaseParam {

	/** 主键id */
	private Long id;

	/** 骑手id */
	private Long riderId;

	/** 订单号 */
	private String outTradeNo;

	/** 提现金额 */
	private BigDecimal withdrawAmount;

	/** 平台手续费/服务费 */
	private BigDecimal platformFee;

	/** 实际到账金额 */
	private BigDecimal actualAmount;

	/** 审核状态 1=平台处理中 2=到账成功 3=审核不通过 */
	private Integer auditStatus;

	/** 审核不通过原因 */
	private String auditReason;

	/** 审核时间 */
	private java.util.Date auditTime;

	/** 打款方式/到账方式 1=微信 2=支付宝 3=银行（银联） */
	private Integer paymentMode;

	/** 开户行 */
	private String openingBankAddress;

	/** 开户银行名称 */
	private String openingBankName;

	/** 银行卡号 */
	private String bankCard;

	/** 支付宝账号 */
	private String alipayAccount;

	/** 微信账号 */
	private String wechatAccount;

	/** 平台交易记录id */
	private Integer platformTradeRecordId;

	/** 创建时间 */
	private java.util.Date createTime;

	/** 修改时间 */
	private java.util.Date updateTime;

	/**
	 * 审核状态(1=通过 2=不通过)
	 */
	@NotNull(message = "审核状态不能为空", groups = {ValidGroupOfAudit.class})
	@Range(min = 1, max = 2, message = "审核状态必须介于1~2之间", groups = {ValidGroupOfAudit.class})
	private Integer status;

	/**
	 * 审核意见(当审核状态为不通过时必填)
	 */
	private String opinion;

	//开始日期
	private Date startCreateTime;

	//结束日期
	private Date endCreateTime;
}